package demo1;

import java.util.ArrayList;
import java.util.List;

public class Test2 {
    public static void main(String[] args) {
        ArrayList<Integer> list=new ArrayList<Integer>();
        ArrayList<String> list3=new ArrayList<String>();
        list.add(11);
        list.add(12);
        list.add(13);
        list.add(10);
        list.add(8);
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }
        System.out.println(list.lastIndexOf(8));
    }
    public static void main3(String[] args) {
        ArrayList<Integer> list=new ArrayList<Integer>();
        list.add(11);
        list.add(12);
        list.add(13);
        list.add(10);
        list.add(8);

        List<Integer> sub=list.subList(1,4);  //左闭右开，因为List的方法subList返回类型为List<E>所以用这个类型接收
        System.out.println(sub);
        sub.set(0,999);  //sub改了list对应也会改，因为sub拿的是list的地址
        System.out.println(sub);
        System.out.println(list);
    }
    public static void main2(String[] args) {
        ArrayList<Integer> list=new ArrayList<Integer>();
        list.add(11);
        list.add(12);
        list.add(13);
        ArrayList<Integer> arrayList=new ArrayList<Integer>(list);  


        //这是ArrayList得一种构造方法
        //另一种构造为new ArrayList<Interger>(10);这个是直接给分配内存了，无参德构造就不会分配
        arrayList.add(2);
        System.out.println(arrayList);
    }
    public static void main1(String[] args) {
        ArrayList<Integer> arrayList=new ArrayList<Integer>();
        arrayList.add(2);
    }
}
